<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui"
      xmlns:h="http://java.sun.com/jsf/html">

    <body>
        <ui:composition template="./../../WEB-INF/templates/MainTemplate.xhtml">
            <ui:define name="dialogs">
                <h:form id="dialogoForm">
                <p:dialog modal="true" id="dialogoFiltrar" widgetVar="dialogoFiltrar"  header="#{messages.Filtrar}">
                        <h:panelGrid columns="4">
                            <p:outputLabel for="d" value="#{messages.D}"></p:outputLabel>
                            <p:selectOneMenu converter="#{dConverter}" id="d" value="#{nuevoEnvioBean.filtradoDataModel.DFiltrado}" label="#{messages.D}">
                                <f:selectItem itemLabel="#{messages.SeleccionaD}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.ds}" var="d" itemLabel="#{d.descripcion}" itemValue="#{d}"></f:selectItems>
                            </p:selectOneMenu>

                            <p:outputLabel for="c" value="#{messages.C}"></p:outputLabel>
                            <p:selectOneMenu converter="#{cConverter}" id="c" value="#{nuevoEnvioBean.filtradoDataModel.CFiltrado}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaC}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.cs}" var="c" itemLabel="#{c.descripcion}" itemValue="#{c}"/>  
                            </p:selectOneMenu>

                            <p:outputLabel for="s" value="#{messages.S}"></p:outputLabel>
                            <p:selectOneMenu converter="#{sConverter}" id="s" value="#{nuevoEnvioBean.filtradoDataModel.SFiltrado}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaS}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.ss}" var="s" itemLabel="#{s.descripcion}" itemValue="#{s}"/>  
                            </p:selectOneMenu>

                            <p:outputLabel for="temporada" value="#{messages.Temporada}"></p:outputLabel>
                            <p:selectOneMenu converter="#{temporadaConverter}" id="temporada" value="#{nuevoEnvioBean.filtradoDataModel.temporadaFiltrado}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaTemporada}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.temporadas}" var="temporada" itemLabel="#{temporada.descripcion}" itemValue="#{temporada}"/>  
                            </p:selectOneMenu>

                            <p:outputLabel for="serieTallaje" value="#{messages.SerieTallaje}"></p:outputLabel>
                            <p:selectOneMenu converter="#{serieTallajeConverter}" id="serieTallaje" value="#{nuevoEnvioBean.filtradoDataModel.serieTallajeFiltrado}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaSerieTallaje}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.seriesTallaje}" var="serieTallaje" itemLabel="#{serieTallaje.descripcion}" itemValue="#{serieTallaje}"/>  
                            </p:selectOneMenu>

                            <p:outputLabel for="sexo" value="#{messages.Sexo}"></p:outputLabel>
                            <p:selectOneMenu converter="#{sexoConverter}" id="sexo" value="#{nuevoEnvioBean.filtradoDataModel.sexoFiltrado}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaSexo}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.sexos}" var="sexo" itemLabel="#{sexo.descripcion}" itemValue="#{sexo}"/>  
                            </p:selectOneMenu>

                            <p:outputLabel for="proveedor" value="#{messages.Proveedor}"></p:outputLabel>
                            <p:selectOneMenu converter="#{proveedorConverter}" id="proveedor" value="#{nuevoEnvioBean.filtradoDataModel.proveedorFiltrado}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaProveedor}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.proveedores}" var="proveedor" itemLabel="#{proveedor.nombreComercial}" itemValue="#{proveedor}"/>  
                            </p:selectOneMenu>
                        </h:panelGrid>
                        <p:commandButton process="@parent" update=":nuevoEnvioBeanForm:panelLineasEnvio" value="#{messages.Filtrar}" actionListener="#{nuevoEnvioBean.filtrarProductosTalla()}" oncomplete="dialogoFiltrar.hide()"></p:commandButton>
                    </p:dialog>
                </h:form>
            </ui:define>
            <ui:define name="bar">
                <h:form id="barForm" rendered="#{nuevaPeticionTraspasoMercancia.usuario.tipoUsuario.descripcion eq 'ADMIN' or nuevaPeticionTraspasoMercancia.usuario.tipoUsuario.descripcion eq 'DIRECCION' or nuevaPeticionTraspasoMercancia.usuario.tipoUsuario.descripcion eq 'LOGISTICA'}">
                    <p:commandButton styleClass="actionButton" id="filtrarButton" value="#{messages.Filtrar}" onclick="dialogoFiltrar.show();"></p:commandButton>
                </h:form>
            </ui:define>
            <ui:define name="content">
                <h:form id="nuevoEnvioBeanForm">
                    <p:growl autoUpdate="true" life="4000" id="nuevoEnvioTraspasoMercanciaGrowl"></p:growl>
                    <p:panel styleClass="noMargin noPadding noBorder" id="datosNuevoEnvioTraspasoMercanciaPanel">
                        <h:panelGrid columns="8">
                            <p:outputLabel rendered="#{nuevoEnvioBean.usuario.tipoUsuario.descripcion ne 'ADMIN' and nuevoEnvioBean.usuario.tipoUsuario.descripcion ne 'DIRECCION' and nuevoEnvioBean.usuario.tipoUsuario.descripcion ne 'LOGISTICA'}" for="almacenEnvio" value="#{messages.AlmacenEnvio}"></p:outputLabel>
                            <p:selectOneMenu rendered="#{nuevoEnvioBean.usuario.tipoUsuario.descripcion ne 'ADMIN' and nuevoEnvioBean.usuario.tipoUsuario.descripcion ne 'DIRECCION' and nuevoEnvioBean.usuario.tipoUsuario.descripcion ne 'LOGISTICA'}" converter="#{almacenConverter}" required="true" id="almacenEnvio" value="#{nuevoEnvioBean.almacenEnvio}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaAlmacen}" itemValue="" />  
                                <f:selectItems value="#{nuevoEnvioBean.usuario.almacenesReservaDeUsuario}" var="almacen" itemLabel="#{almacen.descripcion}" itemValue="#{almacen}"/>  
                                <p:ajax event="change" update="panelLineasEnvio"></p:ajax>
                            </p:selectOneMenu>
                            
                            <p:outputLabel rendered="#{nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'ADMIN' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'DIRECCION' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'LOGISTICA'}" for="almacenEnvioLog" value="#{messages.AlmacenEnvio}"></p:outputLabel>
                            <p:selectOneMenu rendered="#{nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'ADMIN' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'DIRECCION' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'LOGISTICA'}" converter="#{almacenConverter}" required="true" id="almacenEnvioLog" value="#{nuevoEnvioBean.envioTraspasoMercancia.almacenEnvio}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaAlmacen}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.almacenes}" var="almacen" itemLabel="#{almacen.descripcion}" itemValue="#{almacen}"/>  
                                <p:ajax event="change" update="panelLineasEnvio"></p:ajax>
                            </p:selectOneMenu>
                            
                            <p:outputLabel rendered="#{nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'ADMIN' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'DIRECCION' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'LOGISTICA'}" for="almacenDestino" value="#{messages.AlmacenDestino}"></p:outputLabel>
                            <p:selectOneMenu rendered="#{nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'ADMIN' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'DIRECCION' or nuevoEnvioBean.usuario.tipoUsuario.descripcion eq 'LOGISTICA'}" converter="#{almacenConverter}" required="true" id="almacenDestino" value="#{nuevoEnvioBean.envioTraspasoMercancia.almacenDestino}" effect="fade">  
                                <f:selectItem itemLabel="#{messages.SeleccionaAlmacen}" itemValue="" />  
                                <f:selectItems value="#{resourcesBean.almacenes}" var="almacen" itemLabel="#{almacen.descripcion}" itemValue="#{almacen}"/>  
                                <p:ajax event="change" update="panelLineasEnvio"></p:ajax>
                            </p:selectOneMenu>
                            
                            <p:outputLabel for="tracking" value="#{messages.Tracking}"></p:outputLabel>
                            <p:inputText id="tracking" required="false" value="#{nuevoEnvioBean.envioTraspasoMercancia.identificadorEnvio}"></p:inputText>
                            
                            <p:outputLabel for="comentarios" value="#{messages.Comentarios}"></p:outputLabel>
                            <p:inputTextarea id="comentarios" value="#{nuevoEnvioBean.envioTraspasoMercancia.comentarios}"></p:inputTextarea>
                        </h:panelGrid>
                    </p:panel>
                    <p:panel styleClass="noMargin noPadding noBorder" id="panelLineasEnvio">                        
                        <p:dataTable emptyMessage="#{messages.NoProductos}" value="#{nuevoEnvioBean.lineasMostrar}" var="lineaEnvio">
                            <p:column sortBy="#{lineaEnvio.productoTalla.producto.descripcion}" filterBy="#{lineaEnvio.productoTalla.producto.descripcion}" headerText="#{messages.Producto}">
                                <h:outputText value="#{lineaEnvio.productoTalla.producto.descripcion}"></h:outputText>
                            </p:column>
                            <p:column sortBy="#{lineaEnvio.productoTalla.producto.color}" filterBy="#{lineaEnvio.productoTalla.producto.color}" headerText="#{messages.Color}">
                                <h:outputText value="#{lineaEnvio.productoTalla.producto.color}"></h:outputText>
                            </p:column>
                            <p:column sortBy="#{lineaEnvio.productoTalla.talla.descripcion}" filterBy="#{lineaEnvio.productoTalla.talla.descripcion}" headerText="#{messages.Talla}">
                                <h:outputText value="#{lineaEnvio.productoTalla.talla.descripcion}"></h:outputText>
                            </p:column>
                            <p:column sortBy="#{lineaEnvio.lineaPeticionTraspasoMercancia.cantidad}" filterBy="#{lineaEnvio.lineaPeticionTraspasoMercancia.cantidad}" headerText="#{messages.CantidadAEnviar}">
                                <h:outputText value="#{lineaEnvio.lineaPeticionTraspasoMercancia.cantidad}"></h:outputText>
                            </p:column>
                            <p:column headerText="#{messages.Envio}">
                                <p:inputText styleClass="pedidoInput" value="#{lineaEnvio.cantidad}"></p:inputText>
                            </p:column>
                        </p:dataTable>
                    </p:panel>
                    <p:commandButton id="botonGuardarEnvio" value="#{messages.Guardar}" action="#{nuevoEnvioBean.guardar()}"></p:commandButton>
                </h:form>
            </ui:define>
        </ui:composition>
    </body>
</html>
